home *** CD-ROM | disk | FTP | other *** search
- import "oaidl.idl";
-
- cpp_quote("#define TOOLTLIB_MAJOR 7")
- cpp_quote("#define TOOLTLIB_MINOR 0")
-
- [
- uuid(6A481403-E531-11CF-A115-00A024158DAF)
- ,version(7.0)
- ,helpfile("tcsdk.chm")
- ,helpstring("TCAD 7.0 RegenServer Type Library")
- ]
-
- library TcRegenServerLib
- {
- importlib("stdole32.tlb");
- importlib("stdole2.tlb");
-
- [
- uuid(6A481306-E531-11CF-A115-00A024158DAF)
- ,oleautomation
- ,dual
- ]
-
- interface ITurboCADRegenServer : IDispatch
- {
- /*
- * Returns the persistent class id for this RegenMethod's property section.
- * Required.
- */
-
- [
- propget
- ]
- HRESULT Description(
- [out, retval] BSTR* prop
- );
-
- /*
- * Returns the user-visible description of this RegenMethod.
- * Required.
- */
-
- [
- propget
- ]
- HRESULT ClassID(
- [out, retval] BSTR* prop
- );
-
-
- /*
- * Retrieve types and names for regen properties.
- * Required even Custom Regen Object hasn't any own properties.
- */
- HRESULT GetPropertyInfo(
- [in, out] VARIANT* Names
- ,[in, out] VARIANT* Types
- ,[in, out] VARIANT* IDs
- ,[in, out] VARIANT* Defaults
- ,[out, retval] long* prop
- );
-
- /*
- * Get the number of property pages supporting this RegenMethod.
- * Optional - can be omitted if Custom Regen Object doesn't provide any Property Pages.
- */
-
- HRESULT GetPageInfo(
- [in] IDispatch* AGraphic
- ,[out] long* StockPages
- ,[in, out] VARIANT* Names
- ,[out, retval] long* prop
- );
-
- /*
- * Function called during TurboCAD start up.
- * Optional - can be omitted if Custom Regen Object doesn't need any initialisation actions.
- */
- HRESULT Initialize(
- [in] IDispatch* ThisRegenMethod
- ,[out, retval] VARIANT_BOOL* prop
- );
-
- /*
- * Shows Regen Method property pages.
- * Optional - can be omitted if Custom Regen Object doesn't provide any Property Pages.
- */
-
- HRESULT PropertyPages(
- [in] IDispatch* ThisRegenMethod
- ,[in, out] VARIANT* PageNumber
- ,[out, retval] VARIANT_BOOL* prop
- );
-
- /*
- * Exchange and validate Property Pages Data data.
- * Optional - can be omitted if Custom Regen Object doesn't provide any Property Pages.
- */
-
- HRESULT PageControls(
- [in] IDispatch* ThisRegenMethod
- ,[in] IDispatch* AGraphic
- ,[in] long PageNumber
- ,[in] VARIANT_BOOL SaveProperties
- ,[out, retval] VARIANT_BOOL* prop
- );
-
- /*
- * Unload/destroy Property Pages form/dialog.
- * Optional - can be omitted if Custom Regen Object doesn't provide any Property Pages.
- */
-
- HRESULT PageDone(
- [in] IDispatch* ThisRegenMethod
- ,[in, out] VARIANT* PageNumber
- );
-
- /*
- * Function called whenever a new Custom Regen Object graphic was created.
- * Optional - can be omitted if Custom Regen Object don't need to do something with newly created graphic.
- */
-
- HRESULT OnNewGraphic(
- [in] IDispatch* CopyGraphic
- ,[in] VARIANT_BOOL Copy
- ,[out, retval] VARIANT_BOOL* prop // False if failure
- );
-
- /*
- * Function called whenever a copy of a Custom Regen Object graphic is being made.
- * Optional - can be omitted if Custom Regen Object don't need to do something with copy of the graphic.
- */
-
- HRESULT OnCopyGraphic(
- [in] IDispatch* CopyGraphic
- ,[in] IDispatch* SourceGraphic
- ,[in] VARIANT* pvarMatrix
- ,[out, retval] VARIANT_BOOL* prop // not used now
- );
-
- /*
- * Notification function called after graphic property is saved.
- * Required if Custom Regen Object has own properties.
- */
-
- HRESULT OnPropertyChanged(
- [in] IDispatch* AGraphic
- ,[in] long PropID
- ,[in, out] VARIANT* ValueOld
- ,[in, out] VARIANT* ValueNew
- );
-
- /*
- * Notification function called before graphic property is saved.
- * Optional - can be omitted if Custom Regen Object don't need to perform additional validateion
- * actions for propertty.
- */
-
- HRESULT OnPropertyChanging(
- [in] IDispatch* AGraphic
- ,[in] long PropID
- ,[in, out] VARIANT* ValueOld
- ,[in, out] VARIANT* ValueNew
- ,[out, retval] VARIANT_BOOL* prop // True if property could be changed.
- );
-
- /*
- * Notification function called before graphic property is retrieved.
- * Optional.
- */
-
- HRESULT OnPropertyGet(
- [in] IDispatch* AGraphic
- ,[in] long PropID
- );
-
- /*
- * Function called to draw graphic.
- * Optional - can be omitted if Custom Regen Object doesn't draw any non-TurboCAD objects.
- */
-
- HRESULT Draw(
- [in] IDispatch* AGraphic
- ,[in] IDispatch* AView
- ,[in] VARIANT* AMatrix
- ,[out, retval] VARIANT_BOOL* prop // True if we did the redraw (no further processing necessary, no children will be drawn
- );
-
- /*
- * Called when we need to update our object.
- * Optional.
- */
-
- HRESULT Regen(
- [in] IDispatch* AGraphic
- );
-
- };
- }